<?php

Class CondutorPrincipalDAO{

    public function cadastrarConduntorPrincipal(CondutorPrincipal $condutorPrincipal) {
        
        try {

            //Banco de dados
            $conexao = new Conexao();
            $conn = $conexao->abrirConexao();
                        
            $query = "
                INSERT INTO condutor_principal (id, condutor, nome, cpf, sexo, 
                estado_civil, data_nascimento, cnh, data_primeira_habilitacao,
                escolaridade, relacao_segurado, esta_trabalhando, profisssao, 
                esta_aposentado, esta_estudando, estuda_manha, estuda_tarde, 
                estuda_noite, tipo_residencia, condicao_moradia) 
                VALUES (NULL, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?);
            ";
            
//            echo utf8_decode($condutorPrincipal->getCondutor());
//            break;
            
            //converter datas
            $data = new Utilitarios();
            $dataNascimento = $data->ConverteDataBanco($condutorPrincipal->getDataNascimento());
            $dataHabilitacao = $data->ConverteDataBanco($condutorPrincipal->getDataPrimeiraHabilitacao());
                        
            //Cadastro Usuario
            $stmt = $conn->prepare($query);
            $stmt->bindValue(1, utf8_decode($condutorPrincipal->getCondutor()));
            $stmt->bindValue(2, utf8_decode($condutorPrincipal->getNome()));
            $stmt->bindValue(3, utf8_decode($condutorPrincipal->getCpf()));
            $stmt->bindValue(4, utf8_decode($condutorPrincipal->getSexo()));
            $stmt->bindValue(5, utf8_decode($condutorPrincipal->getEstadoCivil()));
            $stmt->bindValue(6, $dataNascimento);
            $stmt->bindValue(7, utf8_decode($condutorPrincipal->getCnh()));
            $stmt->bindValue(8, $dataHabilitacao);
            $stmt->bindValue(9, utf8_decode($condutorPrincipal->getEscolaridade()));
            $stmt->bindValue(10, utf8_decode($condutorPrincipal->getRelacaoSegurado())); 
            $stmt->bindValue(11, utf8_decode($condutorPrincipal->getPossuiDependetes()));
            $stmt->bindValue(11, utf8_decode($condutorPrincipal->getEstarTrabalhando()));
            $stmt->bindValue(12, utf8_decode($condutorPrincipal->getProfissao()));
            $stmt->bindValue(13, utf8_decode($condutorPrincipal->getEstaAposentado()));
            $stmt->bindValue(14, utf8_decode($condutorPrincipal->getEstaEstudando()));
            $stmt->bindValue(15, utf8_decode($condutorPrincipal->getEstudaManha()));
            $stmt->bindValue(16, utf8_decode($condutorPrincipal->getEstudaTarde()));
            $stmt->bindValue(17, utf8_decode($condutorPrincipal->getEstudaNoite()));
            $stmt->bindValue(18, utf8_decode($condutorPrincipal->getTipoResidencia()));
            $stmt->bindValue(19, utf8_decode($condutorPrincipal->getCondicaoMoradia()));
            $stmt->execute();
            
            $idCondutorPrincipal = $conn->lastInsertId();
            
            $conn = $conexao->fecharConexao();
            return $idCondutorPrincipal;
            
        } catch (Exception $exc) {
            echo $exc->getTraceAsString();
            return false;
        }
        
    }
    
    public function editarCondutorPrincipal(CondutorPrincipal $condutorPrincipal) {
        
        
        
    }
    
    public function TESTE(CondutorPrincipal $condutorPrincipal) {
        
        try {

            //Banco de dados
            $conexao = new Conexao();
            $conn = $conexao->abrirConexao();
            
            $query = "
                UPDATE condutor_principal SET condutor = 'OUTRA PESSOA', nome = 'BRUNA', cpf = '696.696.696-69', 
                sexo = 'FEMININO' WHERE id = 3;
            ";            
            
            echo $condutorPrincipal->getIdCondutorPrincipal();
            break;
            
            //converter datas
            $data = new Utilitarios();
            $dataNascimento = $data->ConverteDataBanco($condutorPrincipal->getDataNascimento());
            $dataHabilitacao = $data->ConverteDataBanco($condutorPrincipal->getDataPrimeiraHabilitacao());
            
            //Cadastro Usuario
            $stmt = $conn->prepare($query);
//            $stmt->bindValue(1, utf8_decode($condutorPrincipal->getCondutor()));
//            $stmt->bindValue(2, utf8_decode($condutorPrincipal->getNome()));
//            $stmt->bindValue(3, utf8_decode($condutorPrincipal->getCpf()));
//            $stmt->bindValue(4, utf8_decode($condutorPrincipal->getSexo()));
//            $stmt->bindValue(5, utf8_decode($condutorPrincipal->getEstadoCivil()));
//            $stmt->bindValue(6, utf8_decode($condutorPrincipal->getDataNascimento()));
//            $stmt->bindValue(7, utf8_decode($condutorPrincipal->getCnh()));
//            $stmt->bindValue(8, utf8_decode($condutorPrincipal->getDataPrimeiraHabilitacao()));
//            $stmt->bindValue(9, utf8_decode($condutorPrincipal->getEscolaridade()));
//            $stmt->bindValue(10, utf8_decode($condutorPrincipal->getRelacaoSegurado()));
//            $stmt->bindValue(11, utf8_decode($condutorPrincipal->getPossuiDependetes()));
//            $stmt->bindValue(12, utf8_decode($condutorPrincipal->getEstarTrabalhando()));
//            $stmt->bindValue(13, utf8_decode($condutorPrincipal->getProfissao()));
//            $stmt->bindValue(14, utf8_decode($condutorPrincipal->getEstaAposentado()));
//            $stmt->bindValue(15, utf8_decode($condutorPrincipal->getEstaEstudando()));
//            $stmt->bindValue(16, utf8_decode($condutorPrincipal->getEstudaManha()));
//            $stmt->bindValue(17, utf8_decode($condutorPrincipal->getEstudaTarde()));
//            $stmt->bindValue(18, utf8_decode($condutorPrincipal->getEstudaNoite()));
//            $stmt->bindValue(19, utf8_decode($condutorPrincipal->getTipoResidencia()));
//            $stmt->bindValue(20, utf8_decode($condutorPrincipal->getCondicaoMoradia()));
            $stmt->execute();
            
            $conn = $conexao->fecharConexao();
            
        } catch (Exception $exc) {
            echo $exc->getTraceAsString();
            return false;
        }
        
    }
    
    public function selecionarCondutorPrincipal($idCondutorPrincipal) {
        
        try {
            //Banco de dados
            $conexao = new Conexao();
            $conn = $conexao->abrirConexao();

            //Codigo SQL
            $result = $conn->query("
                SELECT * 
                FROM condutor_principal
                WHERE id = " . $idCondutorPrincipal . " 
            ");
            //SELECT *  FROM `seguradora` WHERE `id` = 1 AND `shadow` = 0

            $num = count($result);
            if ($num == 0) {
                
                $condutorPrincipal = false;
                
            } else {
                $condutorPrincipal = new CondutorPrincipal();
                foreach ($result as $value) {
                    
                    //converter datas
                    $data = new Utilitarios();
                    $dataNascimento = $data->ConverteDataBrasil($value['data_nascimento']);
                    
                    $condutorPrincipal->setCondutor($value['condutor']);
                    $condutorPrincipal->setNome($value['nome']);
                    $condutorPrincipal->setCpf($value['cpf']);
                    $condutorPrincipal->setSexo($value['sexo']);
                    $condutorPrincipal->setEstadoCivil($value['estado_civil']);
                    $condutorPrincipal->setDataNascimento($dataNascimento);
                    $condutorPrincipal->setCnh($value['cnh']);
                    $condutorPrincipal->setDataPrimeiraHabilitacao($value['data_primeira_habilitacao']);
                    $condutorPrincipal->setEscolaridade($value['escolaridade']);
                    $condutorPrincipal->setRelacaoSegurado($value['relacao_segurado']);
                    $condutorPrincipal->setPossuiDependetes($value['possui_dependentes']);
                    $condutorPrincipal->setEstarTrabalhando($value['esta_trabalhando']);
                    $condutorPrincipal->setProfissao($value['profisssao']);
                    $condutorPrincipal->setEstaAposentado($value['esta_aposentado']);
                    $condutorPrincipal->setEstaEstudando($value['esta_estudando']);
                    $condutorPrincipal->setEstudaManha($value['estuda_manha']);
                    $condutorPrincipal->setEstudaTarde($value['estuda_tarde']);
                    $condutorPrincipal->setEstudaNoite($value['estuda_noite']);
                    $condutorPrincipal->setTipoResidencia($value['tipo_residencia']);
                    $condutorPrincipal->setCondicaoMoradia($value['condicao_moradia']);
                    
                    
                }
            }

            $conn = $conexao->fecharConexao();
            return $condutorPrincipal;
        } catch (Exception $exc) {
            echo $exc->getTraceAsString();
        }
        
    }
    
}

?>
